package com.china.juju.entity;


import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.GenericGenerator;


@Entity
@Table(name="juju_user"
    ,catalog="zutuan_prot"
)
public class JujuUser  implements java.io.Serializable {

    private static final long serialVersionUID = 1L;

    public static final String ENTITY_NAME = "com.china.juju.entity.JujuUser";
	public static final String TABLE_NAME="juju_user";

    public static final String PK_Field = "id"; 
    public static final String PK_Method = "getId";  
	
	public static final String P_id = "id"; 
	public static final String P_createtime = "createtime"; 
	public static final String P_email = "email"; 
	public static final String P_emailResetPwdKey = "emailResetPwdKey"; 
	public static final String P_emailVerify = "emailVerify"; 
	public static final String P_emailVerifyKey = "emailVerifyKey"; 
	public static final String P_lastLoginTime = "lastLoginTime"; 
	public static final String P_level = "level"; 
	public static final String P_nickname = "nickname"; 
	public static final String P_password = "password"; 
	public static final String P_sex = "sex"; 
	public static final String P_type = "type"; 
	public static final String P_userCash = "userCash"; 
	public static final String P_userDelFlag = "userDelFlag"; 
	public static final String P_userStatus = "userStatus"; 
	public static final String P_username = "username"; 
	public static final String P_schoolid = "schoolid"; 
	public static final String P_qq = "qq"; 
	public static final String P_phoneNum = "phoneNum"; 
	public static final String P_enrolmentYear = "enrolmentYear"; 
	public static final String P_realname = "realname"; 
	public static final String P_weixin = "weixin"; 
	public static final String P_profile = "profile"; 
	public static final String P_birthday = "birthday"; 
	public static final String P_college = "college"; 
	public static final String P_professional = "professional"; 
	public static final String P_userlogo = "userlogo"; 
	public static final String P_isreport = "isreport"; 
	public static final String P_nicktime = "nicktime"; 
	public static final String P_sextime = "sextime"; 
	public static final String P_schooltime = "schooltime"; 
	public static final String P_tagtime = "tagtime"; 
	public static final String P_birthdaytime = "birthdaytime"; 
	public static final String P_profiletime = "profiletime"; 
	public static final String P_realnametime = "realnametime"; 
	public static final String P_enrolmentYeartime = "enrolmentYeartime"; 
	public static final String P_collegetime = "collegetime"; 
	public static final String P_professionaltime = "professionaltime"; 
	public static final String P_weixintime = "weixintime"; 
	public static final String P_qqtime = "qqtime"; 
	public static final String P_phoneNumtime = "phoneNumtime"; 
	public static final String P_isreceive = "isreceive"; 
	public static final String P_reportmsg = "reportmsg"; 
	public static final String P_points = "points"; 
	public static final String P_invitedby = "invitedby"; 
	public static final String P_signDateNum = "signDateNum"; 
	public static final String P_signLastDate = "signLastDate"; 

     private String id;
     private Date createtime;
     private String email;
     private String emailResetPwdKey;
     private Boolean emailVerify;
     private String emailVerifyKey;
     private Date lastLoginTime;
     private String level;
     private String nickname;
     private String password;
     private Integer sex;
     private Integer type;
     private Long userCash;
     private Integer userDelFlag;
     private Integer userStatus;
     private String username;
     private String schoolid;
     private String qq;
     private String phoneNum;
     private Date enrolmentYear;
     private String realname;
     private String weixin;
     private String profile;
     private Date birthday;
     private String college;
     private String professional;
     private String userlogo;
     private Integer isreport;
     private Date nicktime;
     private Date sextime;
     private Date schooltime;
     private Date tagtime;
     private Date birthdaytime;
     private Date profiletime;
     private Date realnametime;
     private Date enrolmentYeartime;
     private Date collegetime;
     private Date professionaltime;
     private Date weixintime;
     private Date qqtime;
     private Date phoneNumtime;
     private Integer isreceive;
     private String reportmsg;
     private Integer points;
     private String invitedby;
     private Integer signDateNum;
     private String signLastDate;

    public JujuUser() {
    }
	
    public JujuUser(String id) {
        this.id = id;
    }
    public JujuUser(String id, Date createtime, String email, String emailResetPwdKey, Boolean emailVerify, String emailVerifyKey, Date lastLoginTime, String level, String nickname, String password, Integer sex, Integer type, Long userCash, Integer userDelFlag, Integer userStatus, String username, String schoolid, String qq, String phoneNum, Date enrolmentYear, String realname, String weixin, String profile, Date birthday, String college, String professional, String userlogo, Integer isreport, Date nicktime, Date sextime, Date schooltime, Date tagtime, Date birthdaytime, Date profiletime, Date realnametime, Date enrolmentYeartime, Date collegetime, Date professionaltime, Date weixintime, Date qqtime, Date phoneNumtime, Integer isreceive, String reportmsg, Integer points, String invitedby, Integer signDateNum, String signLastDate) {
        this.id = id;
        this.createtime = createtime;
        this.email = email;
        this.emailResetPwdKey = emailResetPwdKey;
        this.emailVerify = emailVerify;
        this.emailVerifyKey = emailVerifyKey;
        this.lastLoginTime = lastLoginTime;
        this.level = level;
        this.nickname = nickname;
        this.password = password;
        this.sex = sex;
        this.type = type;
        this.userCash = userCash;
        this.userDelFlag = userDelFlag;
        this.userStatus = userStatus;
        this.username = username;
        this.schoolid = schoolid;
        this.qq = qq;
        this.phoneNum = phoneNum;
        this.enrolmentYear = enrolmentYear;
        this.realname = realname;
        this.weixin = weixin;
        this.profile = profile;
        this.birthday = birthday;
        this.college = college;
        this.professional = professional;
        this.userlogo = userlogo;
        this.isreport = isreport;
        this.nicktime = nicktime;
        this.sextime = sextime;
        this.schooltime = schooltime;
        this.tagtime = tagtime;
        this.birthdaytime = birthdaytime;
        this.profiletime = profiletime;
        this.realnametime = realnametime;
        this.enrolmentYeartime = enrolmentYeartime;
        this.collegetime = collegetime;
        this.professionaltime = professionaltime;
        this.weixintime = weixintime;
        this.qqtime = qqtime;
        this.phoneNumtime = phoneNumtime;
        this.isreceive = isreceive;
        this.reportmsg = reportmsg;
        this.points = points;
        this.invitedby = invitedby;
        this.signDateNum = signDateNum;
        this.signLastDate = signLastDate;
    }
   
    @Id 
    @GeneratedValue( generator="paymentableGenerator")  
    @GenericGenerator(name="paymentableGenerator", strategy="uuid")
    
    @Column(name="ID", unique=true, nullable=false, length=36)
    public String getId() {
        return this.id;
    }
    
    public void setId(String id) {
        this.id = id;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="CREATETIME", length=19)
    public Date getCreatetime() {
        return this.createtime;
    }
    
    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }
    
    @Column(name="EMAIL")
    public String getEmail() {
        return this.email;
    }
    
    public void setEmail(String email) {
        this.email = email;
    }
    
    @Column(name="emailResetPwdKey")
    public String getEmailResetPwdKey() {
        return this.emailResetPwdKey;
    }
    
    public void setEmailResetPwdKey(String emailResetPwdKey) {
        this.emailResetPwdKey = emailResetPwdKey;
    }
    
    @Column(name="emailVerify")
    public Boolean getEmailVerify() {
        return this.emailVerify;
    }
    
    public void setEmailVerify(Boolean emailVerify) {
        this.emailVerify = emailVerify;
    }
    
    @Column(name="emailVerifyKey")
    public String getEmailVerifyKey() {
        return this.emailVerifyKey;
    }
    
    public void setEmailVerifyKey(String emailVerifyKey) {
        this.emailVerifyKey = emailVerifyKey;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="lastLoginTime", length=19)
    public Date getLastLoginTime() {
        return this.lastLoginTime;
    }
    
    public void setLastLoginTime(Date lastLoginTime) {
        this.lastLoginTime = lastLoginTime;
    }
    
    @Column(name="level", length=32)
    public String getLevel() {
        return this.level;
    }
    
    public void setLevel(String level) {
        this.level = level;
    }
    
    @Column(name="NICKNAME")
    public String getNickname() {
        return this.nickname;
    }
    
    public void setNickname(String nickname) {
        this.nickname = nickname;
    }
    
    @Column(name="PASSWORD")
    public String getPassword() {
        return this.password;
    }
    
    public void setPassword(String password) {
        this.password = password;
    }
    
    @Column(name="SEX")
    public Integer getSex() {
        return this.sex;
    }
    
    public void setSex(Integer sex) {
        this.sex = sex;
    }
    
    @Column(name="TYPE_")
    public Integer getType() {
        return this.type;
    }
    
    public void setType(Integer type) {
        this.type = type;
    }
    
    @Column(name="userCash")
    public Long getUserCash() {
        return this.userCash;
    }
    
    public void setUserCash(Long userCash) {
        this.userCash = userCash;
    }
    
    @Column(name="userDelFlag")
    public Integer getUserDelFlag() {
        return this.userDelFlag;
    }
    
    public void setUserDelFlag(Integer userDelFlag) {
        this.userDelFlag = userDelFlag;
    }
    
    @Column(name="userStatus")
    public Integer getUserStatus() {
        return this.userStatus;
    }
    
    public void setUserStatus(Integer userStatus) {
        this.userStatus = userStatus;
    }
    
    @Column(name="USERNAME")
    public String getUsername() {
        return this.username;
    }
    
    public void setUsername(String username) {
        this.username = username;
    }
    
    @Column(name="schoolid", length=36)
    public String getSchoolid() {
        return this.schoolid;
    }
    
    public void setSchoolid(String schoolid) {
        this.schoolid = schoolid;
    }
    
    @Column(name="qq", length=36)
    public String getQq() {
        return this.qq;
    }
    
    public void setQq(String qq) {
        this.qq = qq;
    }
    
    @Column(name="phone_num", length=36)
    public String getPhoneNum() {
        return this.phoneNum;
    }
    
    public void setPhoneNum(String phoneNum) {
        this.phoneNum = phoneNum;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="enrolment_year", length=19)
    public Date getEnrolmentYear() {
        return this.enrolmentYear;
    }
    
    public void setEnrolmentYear(Date enrolmentYear) {
        this.enrolmentYear = enrolmentYear;
    }
    
    @Column(name="realname", length=36)
    public String getRealname() {
        return this.realname;
    }
    
    public void setRealname(String realname) {
        this.realname = realname;
    }
    
    @Column(name="weixin", length=36)
    public String getWeixin() {
        return this.weixin;
    }
    
    public void setWeixin(String weixin) {
        this.weixin = weixin;
    }
    
    @Column(name="profile", length=1024)
    public String getProfile() {
        return this.profile;
    }
    
    public void setProfile(String profile) {
        this.profile = profile;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="birthday", length=19)
    public Date getBirthday() {
        return this.birthday;
    }
    
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
    
    @Column(name="college")
    public String getCollege() {
        return this.college;
    }
    
    public void setCollege(String college) {
        this.college = college;
    }
    
    @Column(name="professional")
    public String getProfessional() {
        return this.professional;
    }
    
    public void setProfessional(String professional) {
        this.professional = professional;
    }
    
    @Column(name="userlogo")
    public String getUserlogo() {
        return this.userlogo;
    }
    
    public void setUserlogo(String userlogo) {
        this.userlogo = userlogo;
    }
    
    @Column(name="isreport")
    public Integer getIsreport() {
        return this.isreport;
    }
    
    public void setIsreport(Integer isreport) {
        this.isreport = isreport;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="nicktime", length=19)
    public Date getNicktime() {
        return this.nicktime;
    }
    
    public void setNicktime(Date nicktime) {
        this.nicktime = nicktime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="sextime", length=19)
    public Date getSextime() {
        return this.sextime;
    }
    
    public void setSextime(Date sextime) {
        this.sextime = sextime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="schooltime", length=19)
    public Date getSchooltime() {
        return this.schooltime;
    }
    
    public void setSchooltime(Date schooltime) {
        this.schooltime = schooltime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="tagtime", length=19)
    public Date getTagtime() {
        return this.tagtime;
    }
    
    public void setTagtime(Date tagtime) {
        this.tagtime = tagtime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="birthdaytime", length=19)
    public Date getBirthdaytime() {
        return this.birthdaytime;
    }
    
    public void setBirthdaytime(Date birthdaytime) {
        this.birthdaytime = birthdaytime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="profiletime", length=19)
    public Date getProfiletime() {
        return this.profiletime;
    }
    
    public void setProfiletime(Date profiletime) {
        this.profiletime = profiletime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="realnametime", length=19)
    public Date getRealnametime() {
        return this.realnametime;
    }
    
    public void setRealnametime(Date realnametime) {
        this.realnametime = realnametime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="enrolment_yeartime", length=19)
    public Date getEnrolmentYeartime() {
        return this.enrolmentYeartime;
    }
    
    public void setEnrolmentYeartime(Date enrolmentYeartime) {
        this.enrolmentYeartime = enrolmentYeartime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="collegetime", length=19)
    public Date getCollegetime() {
        return this.collegetime;
    }
    
    public void setCollegetime(Date collegetime) {
        this.collegetime = collegetime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="professionaltime", length=19)
    public Date getProfessionaltime() {
        return this.professionaltime;
    }
    
    public void setProfessionaltime(Date professionaltime) {
        this.professionaltime = professionaltime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="weixintime", length=19)
    public Date getWeixintime() {
        return this.weixintime;
    }
    
    public void setWeixintime(Date weixintime) {
        this.weixintime = weixintime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="qqtime", length=19)
    public Date getQqtime() {
        return this.qqtime;
    }
    
    public void setQqtime(Date qqtime) {
        this.qqtime = qqtime;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="phone_numtime", length=19)
    public Date getPhoneNumtime() {
        return this.phoneNumtime;
    }
    
    public void setPhoneNumtime(Date phoneNumtime) {
        this.phoneNumtime = phoneNumtime;
    }
    
    @Column(name="isreceive")
    public Integer getIsreceive() {
        return this.isreceive;
    }
    
    public void setIsreceive(Integer isreceive) {
        this.isreceive = isreceive;
    }
    
    @Column(name="reportmsg")
    public String getReportmsg() {
        return this.reportmsg;
    }
    
    public void setReportmsg(String reportmsg) {
        this.reportmsg = reportmsg;
    }
    
    @Column(name="points")
    public Integer getPoints() {
        return this.points;
    }
    
    public void setPoints(Integer points) {
        this.points = points;
    }
    
    @Column(name="invitedby", length=50)
    public String getInvitedby() {
        return this.invitedby;
    }
    
    public void setInvitedby(String invitedby) {
        this.invitedby = invitedby;
    }
    
    @Column(name="sign_date_num")
    public Integer getSignDateNum() {
        return this.signDateNum;
    }
    
    public void setSignDateNum(Integer signDateNum) {
        this.signDateNum = signDateNum;
    }
    
    @Column(name="sign_last_date", length=16)
    public String getSignLastDate() {
        return this.signLastDate;
    }
    
    public void setSignLastDate(String signLastDate) {
        this.signLastDate = signLastDate;
    }



    @Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}
}


